package com.sunqianhu.design_patterns_23.behavioral.strategy;

public class Client {
    public static void main(String[] args) {
        // 创建一只不会飞的鸭子
        Duck duck1 = new Duck(new NoFly());
        duck1.performFly(); // 输出: 这只鸭子不会飞
        // 创建一只会飞的鸭子
        Duck duck2 = new Duck(new CanFly());
        duck2.performFly(); // 输出: 这只鸭子正在飞行
        // 动态改变鸭子的行为
        duck1.setFlyBehavior(new CanFly());
        duck1.performFly(); // 输出: 这只鸭子正在飞行
    }
}
